package com.skivingcloud.develop.entity;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 通用业务数据表(业务的表单数据） 实体类。
 *
 * @author skivingcloud
 * @since 2024-01-18
 */
@Schema(description = "通用业务数据表(业务的表单数据）")
@Table(value = "sys_business_common")
public class SysBusinessCommon implements Serializable {

    /**
     * 主键
     */
    @Id
    @Schema(description = "主键")
    private String id;

    /**
     * 版本
     */
    @Schema(description = "版本")
    private Long version;

    /**
     * 设计的id，sys_business_designer.id
     */
    @NotBlank(message = "设计的id不能为空")
    @Size(max = 32, message = "设计的id长度不能超过32")
    @Schema(description = "设计的id，sys_business_designer.id")
    private String designerId;

    /**
     * 应用设计编码
     */
    @NotBlank(message = "应用设计编码不能为空")
    @Size(max = 255, message = "应用设计编码长度不能超过255")
    @Schema(description = "应用设计编码")
    private String designerCode;

    /**
     * 表单数据
     */
    @Schema(description = "表单数据")
    private String formData;

    /**
     * 创建人
     */
    @Schema(description = "创建人")
    private String createUser;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    /**
     * 修改人
     */
    @Schema(description = "修改人")
    private String modUser;

    /**
     * 修改时间
     */
    @Schema(description = "修改时间")
    private LocalDateTime modTime;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Long getVersion() {
        return version;
    }

    public void setVersion(Long version) {
        this.version = version;
    }

    public String getDesignerId() {
        return designerId;
    }

    public void setDesignerId(String designerId) {
        this.designerId = designerId;
    }

    public String getDesignerCode() {
        return designerCode;
    }

    public void setDesignerCode(String designerCode) {
        this.designerCode = designerCode;
    }

    public String getFormData() {
        return formData;
    }

    public void setFormData(String formData) {
        this.formData = formData;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public String getModUser() {
        return modUser;
    }

    public void setModUser(String modUser) {
        this.modUser = modUser;
    }

    public LocalDateTime getModTime() {
        return modTime;
    }

    public void setModTime(LocalDateTime modTime) {
        this.modTime = modTime;
    }

}
